home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 1 / CU Amiga Magazine CD-ROM Special Edition (1995)(EMAP Images)(GB)[Issue 1995-11].iso / Aminet / comm / tcp / ATCP_sdk_40_gc.lha / AmiTCP-4.0-gcc / src / netlib / setegid.c < prev    next >
C/C++ Source or Header  |  1995-03-28  |  725b  |  33 lines

  1. static const char *RCS="$Id: setegid.c,v 4.1 1994/09/29 23:09:02 jraja Exp $";
  2. /*
  3.  *    setegid() - set effective group
  4.  *
  5.  *    Copyright © 1994 AmiTCP/IP Group,
  6.  *             Network Solutions Development Inc.
  7.  *             All rights reserved.
  8.  */
  9.  
  10. #include <sys/types.h>
  11. #include <unistd.h>
  12.  
  13. extern struct Library *UserGroupBase;
  14.  
  15. extern __inline int
  16. setregid (int real,int  eff)
  17. {
  18.   register int    _res  __asm("d0");
  19.   register struct Library * a6 __asm("a6") = UserGroupBase;
  20.   register int d0 __asm("d0") = real;
  21.   register int d1 __asm("d1") =  eff;
  22.   __asm __volatile ("jsr a6@(-0x54)"
  23.   : "=r" (_res)
  24.   : "r" (a6), "r" (d0), "r" (d1)
  25.   : "a0","a1","d0","d1", "memory");
  26.   return _res;
  27. }
  28.  
  29. int setegid(gid_t g)
  30. {
  31.   return setregid(-1, g);
  32. }
  33.